package com.wicket.okrbff.biz.service;

import com.wicket.okrbff.biz.service.dto.req.*;
import com.wicket.okrbff.biz.service.dto.res.*;
import com.wicket.okrframework.integration.FwBaseBatchClient;
import com.wicket.okrframework.integration.dto.AddBaseBatchRespDto;
import com.wicket.okrframework.integration.dto.AddBaseBatchReqDto;
import com.wicket.okrbff.common.exception.Assert;
import com.wicket.okrframework.integration.dto.QueryBaseBatchListRespDto;
import com.wicket.okrframework.integration.dto.QueryBaseBatchListReqDto;
import com.wicket.okrframework.integration.FwBaseInductionRecordClient;
import com.wicket.okrframework.integration.dto.BatchQueryInductionRecordListComRespDto;
import com.wicket.okrframework.integration.dto.BatchQueryInductionRecordListComReqDto;
import java.util.stream.Collectors;
import cn.hutool.core.collection.CollectionUtil;
import com.wicket.okrframework.integration.FwBaseOrgClient;
import com.wicket.okrbff.biz.service.dto.common.BffBaseBatchDto;
import cn.hutool.core.bean.BeanUtil;
import com.wicket.okrframework.integration.dto.ImplementOrgDeleteBatchRespDto;
import com.wicket.okrframework.integration.dto.ImplementOrgDeleteBatchReqDto;
import com.wicket.okrframework.integration.dto.QueryOrgDetailComRespDto;
import com.wicket.okrframework.integration.dto.QueryOrgDetailComReqDto;
import com.wicket.okrframework.integration.dto.ImplementOrgBatchPublishRespDto;
import com.wicket.okrframework.integration.dto.ImplementOrgBatchPublishReqDto;
import com.wicket.okrframework.integration.FwBasePowerClient;
import com.wicket.okrframework.integration.dto.QueryCurrentUserRolePowerDetailComRespDto;
import com.wicket.okrframework.integration.dto.QueryCurrentUserRolePowerDetailComReqDto;
import com.wicket.okrframework.integration.dto.JudgeOrgStructureMgtSituationComRespDto;
import com.wicket.okrframework.integration.dto.JudgeOrgStructureMgtSituationComReqDto;
import com.wicket.okrbff.common.util.CommonFunctionHelper;
import com.wicket.okrframework.integration.dto.AddOrgBatchRespDto;
import com.wicket.okrframework.integration.dto.AddOrgBatchReqDto;
import com.wicket.okrframework.integration.dto.JudgeOrgStructureMgtUsableComRespDto;
import com.wicket.okrframework.integration.dto.JudgeOrgStructureMgtUsableComReqDto;
import com.wicket.okrapp.integration.FwAppBatchClient;
import java.util.ArrayList;
import java.util.List;
import com.wicket.okrapp.integration.FwAppEvaThemeClient;
import com.wicket.okrapp.integration.dto.QueryEvaTempBatchHisAndPresentListRespDto;
import com.wicket.okrapp.integration.dto.QueryEvaTempBatchHisAndPresentListReqDto;
import com.wicket.okrapp.integration.FwAppVirtualOrgClient;
import com.wicket.okrapp.integration.dto.QueryEvaTempMgtPowerDetailRespDto;
import com.wicket.okrapp.integration.dto.QueryEvaTempMgtPowerDetailReqDto;
import com.wicket.okrapp.integration.dto.JudgeEvaTempMgtSituationComRespDto;
import com.wicket.okrapp.integration.dto.JudgeEvaTempMgtSituationComReqDto;
import com.wicket.okrapp.integration.dto.QueryEvaTempDetailRespDto;
import com.wicket.okrapp.integration.dto.QueryEvaTempDetailReqDto;
import com.wicket.okrapp.integration.FwAppPowerClient;
import com.wicket.okrapp.integration.dto.QueryCurrentPersonalPowerDetailRespDto;
import com.wicket.okrapp.integration.dto.QueryCurrentPersonalPowerDetailReqDto;
import com.wicket.okrapp.integration.dto.QueryMidMgtSituationDetailComRespDto;
import com.wicket.okrapp.integration.dto.QueryMidMgtSituationDetailComReqDto;
import com.wicket.okrapp.integration.dto.QueryBasicMgtSituationDetailComRespDto;
import com.wicket.okrapp.integration.dto.QueryBasicMgtSituationDetailComReqDto;
import com.wicket.okrframework.integration.dto.JudgeOrgOnlyPowerComRespDto;
import com.wicket.okrframework.integration.dto.JudgeOrgOnlyPowerComReqDto;
import com.wicket.okrbff.common.exception.BizException;
import com.wicket.okrframework.integration.FwBaseDivineDataClient;
import com.wicket.okrframework.integration.dto.ImplementReceiveFieldComRespDto;
import com.wicket.okrframework.integration.dto.ImplementReceiveFieldComReqDto;
import com.wicket.okrapp.integration.dto.ImplementTopBatchPublishRespDto;
import com.wicket.okrapp.integration.dto.ImplementTopBatchPublishReqDto;
import com.wicket.okrapp.integration.dto.ImplementTopDeleteBatchRespDto;
import com.wicket.okrapp.integration.dto.ImplementTopDeleteBatchReqDto;
import com.wicket.okrcomponent.integration.FwCompConfSchemeClient;
import com.wicket.okrcomponent.integration.dto.QueryConfItemMatchAnswerDetailComRespDto;
import com.wicket.okrapp.integration.dto.QueryConfItemMatchAnswerDetailComReqDto;
import com.wicket.okrapp.integration.dto.QueryPlanEvaBatchSetDetailRespDto;
import com.wicket.okrapp.integration.dto.QueryPlanEvaBatchSetDetailReqDto;
import com.wicket.okrcomponent.integration.dto.QueryConfItemMatchEvaTempAnswerDetailComRespDto;
import com.wicket.okrcomponent.integration.dto.QueryConfItemMatchEvaTempAnswerDetailComReqDto;
import com.wicket.okrapp.integration.dto.QueryMidBatchOperCondDetailComRespDto;
import com.wicket.okrapp.integration.dto.QueryMidBatchOperCondDetailComReqDto;
import com.wicket.okrapp.integration.dto.QueryBasicBatchOperCondDetailComRespDto;
import com.wicket.okrapp.integration.dto.QueryBasicBatchOperCondDetailComReqDto;
import com.wicket.okrapp.integration.dto.ReleaseMidBatchFteRespDto;
import com.wicket.okrapp.integration.dto.ReleaseMidBatchFteReqDto;
import com.wicket.okrapp.integration.dto.ReleaseBasicBatchFteRespDto;
import com.wicket.okrapp.integration.dto.ReleaseBasicBatchFteReqDto;
import com.wicket.okrapp.integration.dto.AddTopBatchFteRespDto;
import com.wicket.okrapp.integration.dto.AddTopBatchFteReqDto;
import com.wicket.okrapp.integration.dto.AddMidAndBasicBatchFteRespDto;
import com.wicket.okrapp.integration.dto.AddMidAndBasicBatchFteReqDto;
import com.wicket.okrapp.integration.dto.ImplementMidDeleteBatchRespDto;
import com.wicket.okrapp.integration.dto.ImplementMidDeleteBatchReqDto;
import com.wicket.okrapp.integration.dto.ImplementBasicDeleteBatchRespDto;
import com.wicket.okrapp.integration.dto.ImplementBasicDeleteBatchReqDto;
import com.wicket.okrapp.integration.dto.UpdateEvaTempUseLockStateRespDto;
import com.wicket.okrapp.integration.dto.UpdateEvaTempUseLockStateReqDto;
import com.wicket.okrapp.integration.dto.QueryEvaTempPublishRateDetailRespDto;
import com.wicket.okrapp.integration.dto.QueryEvaTempPublishRateDetailReqDto;
import com.wicket.okrapp.integration.dto.QueryEvaTempMgtPowerDetailComRespDto;
import com.wicket.okrapp.integration.dto.QueryEvaTempMgtPowerDetailComReqDto;
import com.wicket.okrapp.integration.dto.QueryMidBasicPersonalPowerDetailComRespDto;
import com.wicket.okrapp.integration.dto.QueryMidBasicPersonalPowerDetailComReqDto;
import com.wicket.okrapp.integration.dto.QueryTopMidBasicIssueOrRollbackProgressDetailRespDto;
import com.wicket.okrapp.integration.dto.QueryTopMidBasicIssueOrRollbackProgressDetailReqDto;
import com.wicket.okrapp.integration.dto.ImplementTopMidBasicBatchAddJudgeRespDto;
import com.wicket.okrapp.integration.dto.ImplementTopMidBasicBatchAddJudgeReqDto;
import com.wicket.okrapp.integration.FwAppExecuteProgressClient;
import com.wicket.okrapp.integration.dto.ImplementExecuteProgressOperationJudgeComRespDto;
import com.wicket.okrapp.integration.dto.ImplementExecuteProgressOperationJudgeComReqDto;
import com.wicket.okrapp.integration.dto.ImplementMidBasicPublishBatchAnalyseRespDto;
import com.wicket.okrapp.integration.dto.ImplementMidBasicPublishBatchAnalyseReqDto;
import com.wicket.okrbff.biz.service.dto.common.BffUnDocumentDeptDto;
import com.wicket.okrcomponent.integration.dto.QuerySchemeMatchSingleResultToAnswerDetailComRespDto;
import com.wicket.okrcomponent.integration.dto.QuerySchemeMatchSingleResultToAnswerDetailComReqDto;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
public interface BatchService {
    /**
     * B1-1发布组织批次（管理）
     */
    BffReleaseOrgBatchRespDto releaseOrgBatch(BffReleaseOrgBatchReqDto reqDto);

    /**
     * B1-1删除组织批次（管理）
     */
    BffDeleteOrgBatchRespDto deleteOrgBatch(BffDeleteOrgBatchReqDto reqDto);

    /**
   * B1-1查询岗位类型批次列表（当前+未来，操作按钮判断）
   */
    BffQueryStationTypeBatchFteListRespDto queryStationTypeBatchFteList(BffQueryStationTypeBatchFteListReqDto reqDto);

    /**
   * B1-1查询历史岗位类型批次列表（管理）
   */
    BffQueryStationTypeBatchListRespDto queryStationTypeBatchList(BffQueryStationTypeBatchListReqDto reqDto);

    /**
   * B1-3查询组织批次列表（当前+未来，操作按钮判断）
   */
    BffQueryOrgBatchListRespDto queryOrgBatchList(BffQueryOrgBatchListReqDto reqDto);

    /**
   * B1-1查询历史组织批次列表（管理）
   */
    BffQueryOrgBatchHisListRespDto queryOrgBatchHisList(BffQueryOrgBatchHisListReqDto reqDto);

    /**
   * B1-1新增组织批次（管理）
   */
    BffAddOrgBatchRespDto addOrgBatch(BffAddOrgBatchReqDto reqDto);

    /**
   * B1-3发布岗位类型批次(管理）
   */
    BffReleaseStationTypeBatchRespDto releaseStationTypeBatch(BffReleaseStationTypeBatchReqDto reqDto);
/**
   * B1执行组织架构批次发布(管理)
   */
    BffImplementOrgBatchPublishRespDto implementOrgBatchPublish(BffImplementOrgBatchPublishReqDto reqDto);
/**
   * B1执行组织架构撤销批次(管理)
   */
    BffImplementOrgDeleteBatchRespDto implementOrgDeleteBatch(BffImplementOrgDeleteBatchReqDto reqDto);
/**
   * B1-1查询组织架构成员管理判断
   */
    BffQueryOrgStructureMgtSituationDetailRespDto queryOrgStructureMgtSituationDetail(BffQueryOrgStructureMgtSituationDetailReqDto reqDto);
/**
   * B1-1判断组织架构进入管理可用
   */
    BffJudgeOrgStructureMgtUsableRespDto judgeOrgStructureMgtUsable(BffJudgeOrgStructureMgtUsableReqDto reqDto);
/**
   * B3-13查询评价模板当前及历史批次列表
   */
    BffQueryEvaTempBatchHisAndPresentListRespDto queryEvaTempBatchHisAndPresentList(BffQueryEvaTempBatchHisAndPresentListReqDto reqDto);
/**
   * B3-3查询高层批次下进入管理判断(管理)
   */
    BffQueryEvaTempMgtSituationDetailRespDto queryEvaTempMgtSituationDetail(BffQueryEvaTempMgtSituationDetailReqDto reqDto);
/**
   * B3-3查询中层批次下进入管理判断(管理)
   */
    BffQueryMidMgtSituationDetailRespDto queryMidMgtSituationDetail(BffQueryMidMgtSituationDetailReqDto reqDto);
/**
   * B3-3查询基层批次下进入管理判断(管理)
   */
    BffQueryBasicMgtSituationDetailRespDto queryBasicMgtSituationDetail(BffQueryBasicMgtSituationDetailReqDto reqDto);
/**
   * B3执行评价模板批次发布(管理)
   */
    BffImplementPlanEvaBatchPublishRespDto implementPlanEvaBatchPublish(BffImplementPlanEvaBatchPublishReqDto reqDto);
/**
   * B3执行评价模板撤销批次(管理)
   */
    BffImplementPlanEvaDeleteBatchRespDto implementPlanEvaDeleteBatch(BffImplementPlanEvaDeleteBatchReqDto reqDto);
/**
   * B3-3执行中层撤销批次(管理)
   */
    BffImplementMidDeleteBatchRespDto implementMidDeleteBatch(BffImplementMidDeleteBatchReqDto reqDto);
/**
   * B3发布中层未来批次(管理)
   */
    BffReleaseMidBatchFteRespDto releaseMidBatchFte(BffReleaseMidBatchFteReqDto reqDto);
/**
   * B3-3查中层批次使用锁定状态(管理)
   */
    BffQueryMidBatchRelatedSetDetailRespDto queryMidBatchRelatedSetDetail(BffQueryMidBatchRelatedSetDetailReqDto reqDto);
/**
   * B3-3查高层模板使用状态(管理)
   */
    BffQueryTopBatchRelatedSetDetailRespDto queryTopBatchRelatedSetDetail(BffQueryTopBatchRelatedSetDetailReqDto reqDto);
/**
   * B3发布基层未来批次(管理)
   */
    BffReleaseBasicBatchFteRespDto releaseBasicBatchFte(BffReleaseBasicBatchFteReqDto reqDto);
/**
   * B3新增高层未来批次(管理)
   */
    BffAddTopBatchFteRespDto addTopBatchFte(BffAddTopBatchFteReqDto reqDto);
/**
   * B3-3新增中层未来批次(管理)
   */
    BffAddMidBatchFteRespDto addMidBatchFte(BffAddMidBatchFteReqDto reqDto);
/**
   * B3-3新增基层未来批次(管理)
   */
    BffAddBasicBatchFteRespDto addBasicBatchFte(BffAddBasicBatchFteReqDto reqDto);
/**
   * B3-3执行基层撤销批次(管理)
   */
    BffImplementBasicDeleteBatchRespDto implementBasicDeleteBatch(BffImplementBasicDeleteBatchReqDto reqDto);
/**
   * B3-3暂停模板使用(管理)
   */
    BffUpdateSuspendedTempUseStateRespDto updateSuspendedTempUseState(BffUpdateSuspendedTempUseStateReqDto reqDto);
/**
   * B3-3恢复模板使用(管理)
   */
    BffUpdateRestoreTempUseStateRespDto updateRestoreTempUseState(BffUpdateRestoreTempUseStateReqDto reqDto);
/**
   * B3-3查评价模板发布进度情况(管理)
   */
    BffQueryEvaTempPublishRateDetailRespDto queryEvaTempPublishRateDetail(BffQueryEvaTempPublishRateDetailReqDto reqDto);
/**
   * B3-3查询基层批次使用锁定状态
   */
    BffQueryBasicBatchSetDetailRespDto queryBasicBatchSetDetail(BffQueryBasicBatchSetDetailReqDto reqDto);
/**
   * B3查高中基层下发回退进度(管理)
   */
    BffQueryTopMidBasicIssueOrRollbackProgressDetailRespDto queryTopMidBasicIssueOrRollbackProgressDetail(BffQueryTopMidBasicIssueOrRollbackProgressDetailReqDto reqDto);

}
